User identification and password field determination

ABSTRACT

The present invention is a method for automatically determining a user identification (user ID) display field and a password display field during a logon process. The present invention comprises identifying the password display field based on a characteristic associated with the password display field and then identifying the location of the user ID display field based on a predetermined relationship to the identified password display field.

FIELD OF THE INVENTION

[0001] The present invention relates to computer systems and, moreparticularly, to a method for determining the location of a useridentification display field and a password display field during a logonprocess.

BACKGROUND OF THE INVENTION

[0002] In present computer systems it is common for a user working onone computer to access applications residing on another computer, suchas a mainframe computer, as depicted in FIG. 1. Emulation softwarerunning on a processor 109A of a user's computer 110 enables thecomputer 110 to communicate with the mainframe computer 130 in order toaccess an application 132 residing on the mainframe computer 130. Theemulation software running on the processor 109A of the computer 110 isreferred to as an emulator 112. For security, a user 102 supplies a useridentification (“user ID”) and a password to gain access to anapplication 132 residing on the mainframe computer 130.

[0003] Information is passed between the user's computer 110 and themainframe computer 130 over a computer network connection 115 using anoutbound data stream 113A (data sent from the mainframe computer 130 tothe user's computer 110) and an inbound data stream 113B (data sent fromthe user's computer 110 to the mainframe computer 130). FIG. 1A depictsan exemplary representation of the contents of an outbound data stream113A. The outbound data stream 113A contains a stream header 116 anddata fields 117-119. The stream header 116 contains information aboutthe data fields 117-119 (e.g., the number of data fields which followthe stream header 116 and the number of bits in each data field) and thedata fields 117-119 contain information such as user ID informationresiding in a user identification (ID) data field 117 and password fieldinformation residing in a password data field 119.

[0004] Each data field 117-119 within the outbound data stream 113Acontains an attribute field 117A-119A that identifies a property orcharacteristic of its respective field 117-119. The user ID data field117 and the password data field 119 contain information which is used bythe emulator 112 running on the user's computer 110 to display, asdepicted in FIG. 2A, a user ID display field 123 and a password displayfield 125, respectively, on an emulator screen 122A within an emulatorwindow 122 for display on the user's computer monitor 111 (FIG. 1). Theuser 102 then supplies a user ID and a password to the mainframecomputer 130 by typing character strings comprising the user ID andpassword into the appropriate fields of the emulator screen 122A andpressing an [ENTER] key to send the typed information to the mainframecomputer 130.

[0005] One property which is often associated with the password datafield 119 (FIG. 1A), which contains information for generating thepassword display field 125 (FIG. 2A), is a non-display attribute (NDatt.) 119A that prompts the emulator 112 to not display the actual textwhich the user 102 types into a password display field 125. For example,if the user's password is [SUMMER] the emulator may display an asterisk(*) for each character input by a user 102 into the password displayfield 125 on the screen 122A, e.g., [******]. Conversely, the user IDdata field 117, which contains information for generating the user IDdisplay field 125, generally has a display attribute (D att.) 117A thatprompts the emulator 112 to display the actual text which the user 102types into the user ID display field 123.

[0006] In addition to the user ID display field 123 and the passworddisplay field 125 depicted in the emulator window 122 of FIG. 2A, theemulator screen 122A contains a user ID request 123A (e.g., ENTERUSERID) and a password request 125A (e.g., ENTER PASSWORD) thatidentifies the user ID display field 123 and the password display field125, respectively, for the user 102. The user 102 then supplies the userID and the password by typing the user ID and password into theappropriate display field 123,125. Alternatively, the user ID andpassword are entered into display fields residing on different screens.

[0007] The user ID and password are supplied to the application 132through the emulator 112 each time that application 132 is accessed evenif the user 102 is currently using another application (e.g. application131 or 133) on the mainframe 130 and seeks to access the application 132at the same time. Supplying the user ID and password each time theapplication 132 is accessed, however, is cumbersome and oftenunnecessary given modern security techniques such as the secure socketlayer (SSL) protocol implemented in many computer systems.

[0008] As depicted in FIG. 1, many emulators 112 contain macros 114which can be used to supply the user ID and password for the application132. A macro 114 permits a sequence of commands or keystrokes to bestored in a computer memory 109B and then recalled with a single commandor keystroke at a later date. Often, a user 102 will store the user IDand password in a logon macro 114A to facilitate accessing theapplication 132. The user 102 then need only execute a single command orkeystroke to supply the user ID and password to the application 132.Generally, a header 125 of the emulator window 122 (FIG. 2) will containa record button 125A and a play button 125B to facilitate the storageand playback of macros 114 by the emulator 112.

[0009] Storing the user ID and password in the logon macro 114A,however, leads to potential security problems. Security problems arisefrom the ability of persons other than the user 102 who gain access tothe user's computer 110 to obtain the user ID and password of the user102 by examining the logon macro 114A stored in the computer's memory109B, or by executing the logon macro 114A on the user's computer 110when the user 102 is elsewhere.

[0010] Emulation systems have been created which attempt to address thecumbersome logon process and the security issues presented bytraditional macros 114 in prior art emulation systems. An example ofthese emulation systems are the emulation systems which support the IBM®Express Logon Feature (ELF) referred to in “Setting up and Using theIBM® Express Logon Feature,”© Copyright International Business MachinesCorporation 2000, incorporated fully herein by reference.

[0011] In emulation systems incorporating ELF, security is handled bysystem implemented security measures such as the secure socket layer(SSL) protocol. In order to eliminate the need for the user 102 to inputthe user ID and password information for an application 132, a logonmacro 114A must still be created; however, the user ID and password arenot stored. Instead of storing the user ID and password, a logon macro114A is created having placeholders for the user ID and password. Theadvanced emulation systems then rely on the system implemented securitymeasures in a known manner to recognize the placeholders and assign theequivalent of a user ID and password which is acceptable to theapplication 132.

[0012] In order to replace the user ID and password with placeholders,the location of the user ID display field 123 and the password displayfield 125 (FIG. 2A) must first be determined so that information inputinto those fields can be appropriately modified for generating the logonmacro 114A (FIG. 1). Identifying the user ID display field 123 and thepassword display field 125 requires a number of steps to be performed bythe user 102 which are cumbersome and may require that the user 102obtain special training to perform the identifying steps. Systemsseeking to facilitate this process assist the user 102 in manuallyidentifying the user ID display field 123 and the password display field125 for the system.

[0013] One method for identifying the location of the user ID displayfield 123 and the password display field 125 manually involves the useof display windows, such as those displayed in FIGS. 2B and 2C, whichare displayed on a monitor 111 of a user's computer 110 during thecreation of a logon macro 114A. In FIG. 2B a window containing checkboxes 134B and an instruction 134A stating “[d]oes this session screencontain a user ID field used to logon to the host application?,” aredisplayed to the user 102 during the creation of a logon macro 114A.Upon encountering the screen 122A (FIG. 2A) on the monitor 111 where theuser ID is requested, the user 102 selects the box labeled [YES] 134Cand then selects the [NEXT] button 134D on the display window of FIG.2B.

[0014] After selecting the [NEXT] button 134D, indicating to the systemthat a screen 122A containing the user ID display field 123 is displayedon a user's monitor 111, the system generates the display windowdepicted in FIG. 2C. The display window of FIG. 2C provides the user 102with instructions 138A for identifying the location of the user IDdisplay field 123 within the screen 122A. The user ID display field 123is located in a specific location on screen 122A which may be designatedby a row number and a column number. The row number and column numbersfor the user ID display field 123 are then stored so that the user ID(or a user ID replacement, e.g., a placeholder) can be placed in theappropriate user ID display field 123 when the logon macro 114A isplayed back at a later date. In the present example, the row and columnnumbers are stored by inserting the row and column numbers into theappropriate boxes in a position field 138B.

[0015] The user 102 may select the [CURRENT] button 138C to propagatethe row and column location of the cursor on the screen 122A into theposition fields 138B. In this manner, the user 102 may cause theappropriate row and column numbers to be placed into the position fields138B simply by placing the cursor in the first position of the user IDdisplay field 123 (FIG. 2A) and selecting the [CURRENT] button 138C.Alternatively, the user 102 may fill in the position fields 138Bmanually. After the position fields 129B are filled in, the user 102inputs the user ID into the user ID box 129D and selects the [NEXT]button 129E. This process is used to identify the screen and location ofthe user ID display field 123. The user 102 then follows a similarprocess to determine the screen and location of the password displayfield 125.

[0016] Present systems which attempt to identify the location of theuser ID display field 123 and the password display field 125, such asthe method used in recently developed emulation systems, are cumbersomefor a user to learn and use, and require time and effort for training.In addition, time and effort are required for the user 102 to manuallyassist in identifying the locations of the user ID display field 123 andthe password display field 125. Accordingly, a system which is able toautomatically identify the user ID display field 123 and the passworddisplay field 125 displayed on a computer monitor 111 by an emulator 112without intervention from the user 102 would be useful.

SUMMARY OF THE INVENTION

[0017] The present invention discloses a method for automaticallydetermining the location a user identification (user ID) display fieldand a password display field displayed on a computer monitor. Generally,the present invention comprises identifying the location of the passworddisplay field based on a characteristic associated with the passworddisplay field, and then identifying the location of the user ID displayfield based on a predetermined relationship between the user ID displayfield and the identified password display field.

[0018] The automatic identification of the user ID display field and thepassword display field is achieved by monitoring the display fieldsdisplayed on the computer monitor, detecting a first display field basedon a characteristic of that display field, and then determining a seconddisplay field with a predefined relationship to the first display field.In a preferred embodiment, the first display field is the passworddisplay field and the second display field is the user ID display field.

[0019] In a specific embodiment, the system of the present inventionenables a user to create a logon macro for accessing an applicationlocated at a remote computer using a conventional logon procedurewithout any additional steps required to identify the location of theuser ID display field and the password display field. The user ID andpassword display fields are determined automatically from display fieldsdisplayed on a computer monitor with the user simply logging into theapplication using standard screens displayed on the computer monitor.The present invention enables a user to quickly and easily create alogon macro for accessing a mainframe application without performingcumbersome steps or having to learn new procedures, thereby saving timeand effort which can be used to perform other tasks.

BRIEF DESCRIPTION OF THE DRAWINGS

[0020]FIG. 1 is a block diagram of a prior art emulation system used ina distributed computing environment;

[0021]FIG. 1A is a depiction of a prior art outbound data stream used totransfer information from a host computer to a user's computer;

[0022]FIG. 2A is a depiction of a prior art emulator window displaying arequest for a user ID and a password to be entered into a user IDdisplay field and a password display field, respectively;

[0023]FIG. 2B is a block diagram of a related art window for determiningthe screen on which a user ID display field is displayed;

[0024]FIG. 2C is a block diagram of a related art window for determiningthe location of the user ID display field displayed on the screendisplaying the user ID field.

[0025]FIG. 3 is a flow chart depicting the identification of the useridentification display field and the password display field inaccordance with the present invention; and

[0026]FIG. 4 is a flow chart of a macro incorporating the automaticidentification of a password display field and user identificationdisplay field in accordance with the present invention.

DETAILED DESCRIPTION OF THE INVENTION

[0027] The present invention relates to a method for automaticallyidentifying display fields displayed on a computer monitor. In apreferred embodiment of the present invention, the display fieldidentified are a user identification (user ID) display field and thepassword display field. Generally, the preferred embodiment of thepresent invention comprises identifying the location of the passworddisplay field based on a characteristic associated with a display fieldand then identifying the location of the user ID display field based ona predetermined relationship to the display field identified as thepassword display field. The user ID and password display fields aredetermined automatically without requiring a user to manually performadditional steps or supply additional information.

[0028]FIG. 3 depicts a flow chart describing the steps used to identifythe user ID display field 123 and the password display field 125 (FIG.2A) from display fields displayed on an emulator screen 122A of acomputer monitor 111 (FIG. 1) in accordance with a preferred method ofthe present invention. For illustrative purposes, the method will bedescribed using the emulation system depicted in FIG. 1 and the outbounddata stream 113A depicted in FIG. 1A, however, the present invention canbe incorporated wherever a data stream comprising information forgenerating a first display field with an identifiable characteristic anda second display field having a predefined relationship with the firstdisplay field is available. Suitable uses for the method of the presentinvention will be readily apparent to those skilled in the art. In apreferred embodiment, the steps used to identify the user ID displayfield 123 and the password display field 125 are stored as instructionsin a memory 109B (e.g., a computer readable medium) which may beperformed by a processor 109A.

[0029] Referring to FIG. 3, in step 142, display fields displayed by anemulator 112 on a computer monitor 111 are monitored as the emulator 112accesses an application 132 stored on the mainframe computer 130. In apreferred embodiment, a computer interrupt (i.e., a signal from aprogram within the computer that causes a program to stop and figure outwhat to do next) is generated whenever a cursor is placed in a newdisplay field, thereby prompting the emulator 112 to examine the displayfield containing the cursor. In alternative embodiments, every displayfield is examined systematically.

[0030] In step 144, the password display field 125 (FIG. 2A) isidentified. The method of the present invention identifies the passworddisplay field 125 by detecting a first display field displayed on theemulator screen 122A with a specified characteristic. In certainpreferred embodiments, the specified characteristic is derived from anattribute 117A-119A associated with each data field 117-119 used togenerate the display fields on the emulator screen 122A. The attributes117A-119A identify a property or characteristic of their associated datafields 117-119. In the certain preferred embodiments, the specifiedcharacteristic is a non-display attribute (ND att.) 119A indicating thatdata input into a display field with the non-display attribute will notbe displayed on an emulator screen 122A.

[0031] Generally, an emulator will display a specific symbol, such as an“*,” on an emulator screen 122A (FIG. 2A) in response to a user'skeystrokes input to a non-display attribute field regardless of theactual keystrokes typed by the user 102. Typically, the first displayfield having a non-display attribute which a cursor is positioned in isthe password display field 125; assuming this to be the case,identifying the first display field having a non-display attribute alsoidentifies that display field as the password display field 125.

[0032] Although the specified characteristic mentioned above is theexistence of a non-display attribute, it is understood that thespecified characteristic may be any feature associated with the displayfield generated from the data fields 117-119 which could be used toidentify the password display field 125. By detecting the passworddisplay field 125 in the above-described manner, the password displayfield 125 can be detected without requiring additional input from theuser 102 to identify a screen 122A displaying the password display field125 and the location of the password display field 125 on that screen122A.

[0033] In step 146, the user ID display field 123 (FIG. 2A) isidentified. In accordance with the present invention, the user IDdisplay field 123 is identified by its relationship to the display fieldwith the specified characteristic (i.e., the password display field125). Typically, the first non-empty display field (e.g., a displayfield containing data input by a user 102 such as the user ID displayfield 123) preceding the password display field is the user ID displayfield 123.

[0034] For illustrative purposes, data field 118 generates an emptydisplay field (i.e., data is not input into the display field),therefore, in this example, the first non-empty display field precedingthe password display field 125 is the user ID display field 123.Obviously, other predefined relationships may be used to determine theuser ID display field 123 depending on the system with which the methodof the present invention is used. For example, the predefinedrelationship may be simply the display field immediately preceding thepassword display field 125 (i.e., display field 124 in this example)regardless of the content of that display field. Alternatively, thepredefined relationship may be the third display fieldpreceding/following the password display field 125; the third non-emptydisplay field preceding/following the password display field 125; etc.

[0035] In a preferred embodiment, every time a cursor is positioned in anon-empty display field that field is stored as a potential user IDfield in a memory 109B. If the next field the cursor is positioned in isthe password display field 125, the stored field is identified as theuser ID display field 123. If the next field the cursor is positioned inis not the password display field 125, the new field in which the cursoris positioned becomes the potential user ID field, etc. In analternative embodiment, all of the display fields in which the cursor ispositioned are stored in the memory 109B until the password displayfield 125 is identified. The system then examines the memory addresspreceding the memory address of the password display field 125 toascertain the user ID display field 123.

[0036] As long as there is either a uniform standard used in the system(e.g., the user ID display field 123 is always a predetermined number ofdisplay fields before or after the password display field 125) or theuser ID display field 123 is determinable by sensing a characteristicabout it (e.g., the user ID display field 123 is the first non-emptydisplay field before or after the password display field 125), then themethod of the present invention may be practiced. Accordingly, the userID display field 123 can be detected without requiring additional inputfrom the user 102 to identify a screen displaying the user ID displayfield 123 and the location of the user ID display field 123 on thatscreen.

[0037] The automatic identification of the user ID display field 123 andthe password display field 125 as described in the description of FIG. 3can be used to create a logon macro 114A in an emulation system (FIG.1). FIG. 4 depicts a flow chart describing the creation of the logonmacro 114A and the use of the logon macro 114A in an emulator 112. Thelogon macro 114A is created for logging onto an application 132 residingon a mainframe computer 130.

[0038] In step 152, it is determined if a logon macro 114A exists foraccessing an application 132. In a preferred embodiment, a systemadministrator or an individual user 102 developing the logon macro 114Awould make this determination. If it is determined that a logon macro114A for accessing the application 132 does not exist the processingproceeds to step 154.

[0039] In step 154, data (e.g., keystrokes) input by a user 102 isrecorded. During the creation of the logon macro 114A (e.g., an initiallogon to the application132), the user 102 inputs the user ID andpassword into a user ID display field 123 and a password display field125 (FIG. 2A), respectively, as if accessing the application 132 withoutcreating a macro 114.

[0040] In step 156, the user ID display field 123 and the passworddisplay field 125 are automatically identified using the steps describedin the description of FIG. 3 of the present invention.

[0041] In step 158, placeholders are substituted for the characterstrings input by the user 102 into the password display field 125 andthe user ID display field 123 (i.e., the user ID and password).Preferably, the placeholders are substituted during the recording of thelogon macro 114A. Alternatively, the substitution can take place afterthe logon macro 114A is recorded.

[0042] In step 160, the recording is finished and the recordingcontaining the recorded keystrokes with the substituted placeholders isstored as a logon macro 114A. The application 132 is then accessed instep 162.

[0043] If it is determined that a logon macro 114A for accessing theapplication 132 does exist, the processing proceeds to step 164. In step164, the logon macro 114A, comprising the recorded keystrokes input bythe user 102 with the substituted placeholders, is used to access theapplication 132. Additional software programs running within the systemidentify the placeholders and assign secure logon information foraccessing the application 132. The application 132 is then accessed instep 162 as described above.

[0044] In a practical application of the method depicted in FIG. 4, asystem administrator first creates a logon macro 114A to logon to anapplication 132 and then distributes the logon macro 114A to end users.During the recording of the logon macro 114A, the user ID display field123 and password display field 125 are identified so that theplaceholders can be substituted into the logon macro 114A for the valuesinput into these fields by the administrator. During subsequent logonsby the end users, the logon macro 114A with the placeholders is usedwith security handled by a secure socket layer (SSL). During playback ofthe logon macro 114A by the end users, the placeholders in the macro aresent to a server residing between the user's computer 110 and themainframe 130. The server scans for the placeholders and replaces themwith values acceptable to the application 132. The placeholders can beany predefined character string that the server is programmed torecognize.

[0045] Although the present invention has been described in terms ofidentifying a user ID display field and a password display field, thepresent invention can be used to identify essentially any display fieldsin which a first display field has a distinguishing characteristic and asecond display field has a predefined relationship to the first displayfield. For example, the present invention could be used to identify acredit card number display field and a credit card expiration datedisplay field. Other applications for which the present invention may beused will be readily apparent to those skilled in the art.

[0046] Having thus described a few particular embodiments of theinvention, various alterations, modifications, and improvements willreadily occur to those skilled in the art. For example, the presentinvention has been described for use with an emulator system, however,the present invention can be used with any system containing data whichgenerates display fields with unique attributes and characteristics forreceiving logon information. In addition, the invention has beendescribed with the user ID display field and the password field residingon the same screen, however, the user ID display field and passwordfield may be displayed on different screens as long as a relationshipbetween the display fields can be ascertained. Also, the method of thepresent invention can be stored as instructions on a computer-readablemedium which may be performed by a processor. Such alterations,modifications and improvements as are made obvious by this disclosureare intended to be part of this description though not expressly statedherein, and are intended to be within the spirit and scope of theinvention. Accordingly, the foregoing description is by way of exampleonly, and not limiting. The invention is limited only as defined in thefollowing claims and equivalents thereto.

What is claimed is:
 1. A method for automatically determining from aplurality of display fields displayed on a computer monitor the locationof a first display field having a characteristic and a second displayfield having a predefined relationship with the first display fieldcomprising the steps of: identifying the first display field from amongthe plurality of display fields based on the characteristic of the firstdisplay field; and identifying the second display field from among theplurality of display fields based on the predefined relationship betweenthe second display field and the identified first display field.
 2. Themethod of claim 1, wherein the first display field is a password displayfield and the second display field is a user identification displayfield.
 3. The method of claim 1, wherein said step of identifying thefirst display field with the characteristic comprises monitoring displayfields displayed on the computer monitor and detecting the first displayfield having the characteristic.
 4. The method of claim 3, wherein thecharacteristic is a non-display attribute.
 5. The method of claim 4,wherein an emulator generates display fields on the computer monitor andsaid step of monitoring comprises examining a new display field inresponse to an interrupt generated by said emulator when a cursor ispositioned within said new display field.
 6. The method of claim 1,wherein said step of identifying the second display field comprisesmonitoring the display fields displayed on the computer monitor anddetermining which display field has the predefined relationship with thefirst display field.
 7. The method of claim 6, wherein an emulatorgenerates display fields on the computer monitor and said step ofmonitoring comprises examining a new display field in response to aninterrupt generated by said emulator when a cursor is positioned withinsaid new display field.
 8. The method of claim 6, wherein saidpredefined relationship between the second display field and the firstdisplay field is that the second display field is the first non-emptydisplay field preceding the first display field.
 9. The method of claim6, wherein the predefined relationship is that the second display fieldis positioned a predetermined number of display fields from the firstdisplay field.
 10. The method of claim 6, wherein said predefinedrelationship is that the second display field is positioned apredetermined number of non-empty display fields from the first displayfield.
 11. A computer-readable medium having stored thereon instructionswhich, when executed by a processor of a computer having a computermonitor, cause the processor to perform the steps of: identifying afirst display field displayed on the computer monitor based on acharacteristic of said first display field; and identifying a seconddisplay field displayed on the computer monitor based on a predefinedrelationship between said second display field and said identified firstdisplay field.
 12. The computer-readable medium of claim 11, whereinsaid step of identifying said first display field with saidcharacteristic comprises monitoring display fields displayed on thecomputer monitor and detecting the first display field having saidcharacteristic.
 13. The computer-readable medium of claim 12, whereinsaid characteristic of said first display field is that it has anon-display attribute.
 14. The computer-readable medium of claim 11,wherein said step of identifying said second display field comprisesmonitoring the display fields displayed on the computer monitor anddetermining which display field has said predefined relationship withsaid first display field.
 15. The computer-readable medium of claim 14,wherein said predefined relationship between said second display fieldand said first display field is that said second display field is thefirst non-empty display field preceding said first display field.
 16. Asystem for identifying display fields displayed on a computer monitorcomprising a processor and instruction stored on a computer-readablemedium, said instruction when performed by said processor cause saidsystem to perform the steps of: identifying a first display fielddisplayed on the computer monitor based on a characteristic of saidfirst display field; and identifying a second display field displayed onthe computer monitor based on a predefined relationship between saidsecond display field and said identified first display field.
 17. Thesystem of claim 16, wherein said step of identifying said first displayfield with said characteristic comprises monitoring display fieldsdisplayed on the computer monitor and detecting the first display fieldhaving said characteristic.
 18. The system of claim 17, wherein saidcharacteristic of said first display field is that it has a non-displayattribute.
 19. The system medium of claim 16, wherein said step ofidentifying said second display field comprises monitoring the displayfields displayed on the computer monitor and determining which displayfield has said predefined relationship with said first display field.20. The system of claim 19, wherein said predefined relationship betweensaid second display field and said first display field is that saidsecond display field is the first non-empty display field preceding saidfirst display field.
 21. A method for creating a logon macro from datainput into display fields displayed on a computer monitor by an emulatorfor accessing an application comprising the steps of: recording datainput into display fields displayed on the computer monitor; identifyinga first display field displayed on the computer monitor based on acharacteristic of said first display field, said first display fieldreceiving a first character string as input data; substituting a firstplaceholder for said first character string in the recorded input data;identifying a second display field displayed on the computer monitorbased on a predetermined relationship between said second display fieldand said first identified display field, said second display fieldreceiving a second character string as input data; and substituting asecond placeholder for said second character string in the recordedinput data.
 22. The method of claim 21, wherein said step of identifyingsaid first display field comprises monitoring the display fieldsgenerated by the emulator on the computer monitor during a logon processand detecting the first display field having said characteristics. 23.The method of claim 22, wherein said characteristic of said firstdisplay field is that it has a non-display attribute.
 24. The method ofclaim 21, wherein said predefined relationship between said seconddisplay field and said first display field is that said second displayfield is the first non-empty display field preceding said first displayfield.
 25. The method of claim 24, wherein said step of identifying saidsecond display field comprises monitoring the display field generated bythe emulator on the computer monitor during a logon process anddetecting the first non-empty display field preceding said first displayfield.
 26. The method of claim 21, wherein said first display field is apassword display field and said second display field is a useridentification display field.
 27. The method of claim 21, wherein saidsteps of substituting said first placeholder and said second placeholderin the recorded data streams occur during the recording of the datainput into display field.
 28. The method of claim 21, wherein said stepsof substituting said first placeholder and said second placeholder inthe recorded data streams occur after the recording of the data inputinto display fields is complete.